﻿namespace Digitalmes.Core.Common.SerialPorts;

public interface ISerialPortsProvider
{
    /// <summary>
    /// 获取所有注册的串口对象。
    /// </summary>
    IReadOnlyList<IRsSerialPort> SerialPorts { get; }

    /// <summary>
    /// 加载配置的串口。
    /// </summary>
    Task LoadAsync(CancellationToken cancellationToken);

    /// <summary>
    /// 释放并清除所有的已注册的串口。
    /// </summary>
    void Clear();
}
